#pragma once
#include<stdio.h>
#include<stdlib.h>
#include<assert.h>
typedef int SLNDataType;
typedef struct SLNode
{
	SLNDataType data;
	struct SLNode* next;
}SL;
//创建节点
SL* SLCreatNode(SLNDataType x);
//打印
void SLPrint(SL* sl);
//头插
void SLPushFront(SL* phead, SLNDataType x);
//尾插
void SLPushBack(SL** pphead, SLNDataType x);//用二级指针，因为要对首地址进行改变
//头删
void SLPopFront(SL* phead);
//尾删
void SLPopBack(SL* phead);
//查找
SL* SLFind(SL* phead, SLNDataType x);
//pos位置插入e
void SLInset(SL* phead, SL* pos, SLNDataType e);
//pos位置删除
void SLPop(SL* phead, SL* pos);
//销毁
void SLDestroy(SL** phead);
